package com.ruoyi.system.service.impl;

import java.util.List;

import com.alibaba.fastjson.JSONObject;
import com.ruoyi.system.mapper.DateUtilSqlMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.system.mapper.MxSupplierMapper;
import com.ruoyi.system.domain.MxSupplier;
import com.ruoyi.system.service.IMxSupplierService;

/**
 * 供货商Service业务层处理
 *
 * @author ruoyi
 * @date 2024-08-11
 */
@Service
public class MxSupplierServiceImpl implements IMxSupplierService {
    @Autowired
    private MxSupplierMapper mxSupplierMapper;

    @Autowired
    private DateUtilSqlMapper dateUtilSqlMapper;

    @Override
    public List<JSONObject> allList() {
        return mxSupplierMapper.allList();
    }

    /**
     * 查询供货商
     *
     * @param id 供货商主键
     * @return 供货商
     */
    @Override
    public MxSupplier selectMxSupplierById(Long id) {
        return mxSupplierMapper.selectMxSupplierById(id);
    }

    /**
     * 查询供货商列表
     *
     * @param mxSupplier 供货商
     * @return 供货商
     */
    @Override
    public List<MxSupplier> selectMxSupplierList(MxSupplier mxSupplier) {
        return mxSupplierMapper.selectMxSupplierList(mxSupplier);
    }

    /**
     * 新增供货商
     *
     * @param mxSupplier 供货商
     * @return 结果
     */
    @Override
    public int insertMxSupplier(MxSupplier mxSupplier) {
        mxSupplier.setAddtime(dateUtilSqlMapper.getNowDateTime());
        mxSupplier.setUpTime(dateUtilSqlMapper.getNowDateTime());
        return mxSupplierMapper.insertMxSupplier(mxSupplier);
    }

    /**
     * 修改供货商
     *
     * @param mxSupplier 供货商
     * @return 结果
     */
    @Override
    public int updateMxSupplier(MxSupplier mxSupplier) {
        mxSupplier.setUpTime(dateUtilSqlMapper.getNowDateTime());
        return mxSupplierMapper.updateMxSupplier(mxSupplier);
    }

    /**
     * 批量删除供货商
     *
     * @param ids 需要删除的供货商主键
     * @return 结果
     */
    @Override
    public int deleteMxSupplierByIds(Long[] ids) {
        return mxSupplierMapper.deleteMxSupplierByIds(ids);
    }

    /**
     * 删除供货商信息
     *
     * @param id 供货商主键
     * @return 结果
     */
    @Override
    public int deleteMxSupplierById(Long id) {
        return mxSupplierMapper.deleteMxSupplierById(id);
    }
}
